There are many different audio and video codecs that support multiple different quality levels and/or resolutions for real-time communications. For example, an audio codec of G.729 transmits data at 40 kbps, while an HD quality H.264 codec needs upwards of 22 Mbps to properly transmit data. Because of this, different codecs have may have different bandwidth requirements. Before initiating a communication session between two or more endpoints, a codec must be chosen for use in transmitting data between the endpoints. The chosen codec, and the corresponding bandwidth requirements, must be agreed upon by the endpoints as well as any intermediate nodes involved in the communication session.
When initiating a communication session, call signaling is used to negotiate and establish the communication session, and resource reservation is used to reserve the appropriate network resources. One example of a call signaling protocol is the Session Initiation Protocol (SIP), which may also utilize the Session Description Protocol (SDP) to provide a selection of codecs. SDP provides a single bandwidth attribute for each codec when offering a selection of codecs. Examples of resource reservation protocols include the Resource Reservation Protocol (RSVP) and Next Steps in Signaling protocol (NSIS). RSVP is used to reserve the network resources that are required to establish the communication session, and RSVP uses a plurality of bandwidth attributes when reserving resources.